
#pragma once
#ifndef _RINIF_H_
#define _RINIF_H_

#include "Read_file.h"

#include <SDC/system.h>

class RIniFile : public IReadFile {
private:
    ptree pt;
    string name_file;

public:
    RIniFile(RIniFile &&) = delete;
    RIniFile &operator=(RIniFile &&) = delete;

    RIniFile(const string name_path_file) { name_file = name_path_file; }
    RIniFile(const RIniFile &other) { name_file = other.name_file; }
    void operator=(const RIniFile &other) { name_file = other.name_file; }
    void operator=(const string name_path_file) { name_file = name_path_file; }

    string readStr(const string name_read_data_file) override;
    int readInt(const string name_read_data_file) override;
    bool readBool(const string name_read_data_file) override;
    vector_str readVectorStr(const string name_read_data_file) override;
    vector_int readVectorInt(const string name_read_data_file) override;

    ~RIniFile() override {}
};

#endif
